The present invention relates to image processing for computer graphics (hereinafter, referred to as “CG”). More particularly, the present invention relates to image processing to simulate, as close as possible, the motion of a real object in an object image that changes with time.
The motion of object images (change in state, change in shape, movement) in computer graphics is modeled by solving the equation of motion for a plurality of points to determine the shape of the object image. The connection between points is completely responsible for interactions between these points.
For example, when the object image to be created is an image of a rigid body, the connection is as follows. The distance between points on the object image and the relative position of one point with respect to another do not easily change. On the other hand, when the object image to be created is an image of an elastic body, the connection is as follows. Points on the object image are joined by a segment. The object image consists of a series of segments, each of which is represented as a flexible member such as a spring constituting a model. The model moves in a range that satisfies the equation of motion for a spring.
Considering the connection between points as described above, it is possible to approximate the motion of CG object images to the motion of real objects to a certain degree.
However, modeling of some scenes such as those with waves on a sea surface often involves difficulties. The crest of the wave breaks and small water droplets scatter in the wind. Waterdrops fall to the sea surface, and run back to the sea. In such a case, it is necessary to separate small images of waterdrops from the image of waves (hereinafter, the small image is referred to as a “unit”) or to combine units of water droplets with an image of a sea surface in order to vary the connection between the sea surface and the units. It is very troublesome to simulate this type of motion using the connection of points on an object image, as in conventional rigid or elastic bodies.
Further, conventional approaches can only separate and combine the units at the same location on a given object image even when the units are separated and combined repeatedly. Real-world objects, on the other hand, are not always separated or combined at the same locations. Therefore, it is difficult to simulate the real motion for such scenes.
A primary object of the present invention is to provide an image processing technique to make the motion of an object image much closer to the real thing.